import { Tray, Menu, app } from 'electron';
import * as path from 'node:path';
import { autoUpdater } from 'electron-updater';

/*创建系统托盘*/
export function createTray() {
  const tray = new Tray(path.resolve(__dirname, '../../resources/icon.png'));
  const contextMenu = Menu.buildFromTemplate([
    {
      label: '检查更新',
      type: 'normal',
      click() {
        autoUpdater.checkForUpdates(); // 检查更新
      },
    }, // type包含  normal, separator, submenu, checkbox 或 radio。
    { label: 'separator', type: 'separator' }, // 分隔符
    {
      label: '重新启动',
      type: 'normal',
      click() {
        app.relaunch({ args: process.argv.slice(1).concat(['--relaunch']) });
        app.exit(0);
      },
    },
    {
      label: '退出应用',
      type: 'normal',
      click() {
        app.quit(); // 尝试关闭所有窗口 将首先发出 before-quit 事件。 如果所有窗口都已成功关闭, 则将发出 will-quit 事件, 并且默认情况下应用程序将终止
      },
    },
  ]);
  tray.setToolTip('嘎嘎');
  tray.setContextMenu(contextMenu);
}
